<?php
/**
 * 定义二维平面中的一个点，使用迪卡尔坐标定义，也就是直角坐标系
 * 不要被迪卡尔这个名字迷惑，这个只是勾股定理，用来求坐标系上两点间的直线距离
 * User: ford
 * Date: 15-6-17
 * Time: 上午9:09
 */

class Point {
	private $x;
	private $y;

	/**
	 * 初始化X，Y坐标
	 * @param $x X坐标
	 * @param $y Y坐标
	 */
	function __construct($x, $y) {
		$this->x = $x;
		$this->y = $y;
	}

	/**
	 * 返回X坐标值
	 * @return mixed X坐标
	 */
	function getX() {
		return $this->x;
	}

	function getY() {
		return $this->y;
	}

	/**
	 * 这个函数用来计算直角坐标系上两点间的距离
	 * pow指数函数，用来求param1的param2次方
	 * @param $p Point变量
	 * @return mixed
	 */
	function dist($p) {
		return sqrt(pow($this->x - $p->getX(), 2) + pow($this->y - $p->getY(), 2));
	}
}

$p1 = new Point(2, 3);
$p2 = new Point(5,7);
echo $p1->dist($p2);